Skip to content

Conversation

@sfreudenthaler
Copy link
Member

Proposed Changes

  • change 1
  • change 2

Checklist

  • Tests
  • Translations
  • Security Implications Contemplated (add notes if applicable)

Additional Info

** any additional useful context or info **

Screenshots

Original Updated
** original screenshot ** ** updated screenshot **

sfreudenthaler and others added 4 commits September 26, 2025 21:14
- Create reusable org-membership-check action to verify dotCMS membership
- Update Claude workflow with security gate that blocks non-members
- Hardcode organization to prevent override attacks
- Add comprehensive logging for security decisions

Addresses security concern from issue dotCMS#33050 where external users
could trigger Claude workflows by mentioning @claude in comments.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
The GitHub API returns different responses for private vs public membership:
- Public members: Returns user object
- Private members: Returns empty response with 200 OK
- Non-members: Returns 404 error

Previous logic only checked exit codes and failed to detect private
members like organization owners who have private visibility.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
Add detailed comments explaining GitHub's membership API behavior:
- HTTP 200 = member (regardless of response content)
- HTTP 404 = non-member
- Private members return empty response but still 200 OK
- Public members return user object with 200 OK

This design decision ensures all org members are authorized correctly
without needing to parse different response formats.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
@sfreudenthaler sfreudenthaler requested a review from a team as a code owner September 27, 2025 03:08
@sfreudenthaler sfreudenthaler merged commit 2581e75 into main Sep 27, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant